package com.gomefinance.excelutils;
import java.io.File;
import java.io.FileInputStream;

public class ReaderUtil {

    // excel2003扩展名
    public static final String EXCEL03_EXTENSION = ".xls";
    // excel2007扩展名
    public static final String EXCEL07_EXTENSION = ".xlsx";

    /**
     * 读取Excel文件，可能是03也可能是07版本
     *

     * @throws Exception
     */
    public static void readExcel(IRowReaderImpl reader, File file, int firstRow) throws Exception {
        String fileName = file.getName();
        // 处理excel2003文件
        if (fileName.endsWith(EXCEL03_EXTENSION)) {
            Excel2003Reader excel03 = new Excel2003Reader();
            excel03.setRowReader(reader);
            excel03.setFirstRow(firstRow);//设置从第几行开始解析-下标
            excel03.process(new FileInputStream(file));
            // 处理excel2007文件
        } else if (fileName.endsWith(EXCEL07_EXTENSION)) {
            Excel2007Reader excel07 = new Excel2007Reader();
            excel07.setRowReader(reader);
            reader.setFirstRow(firstRow);//设置从第几行开始解析-下标
            excel07.process(new FileInputStream(file));
        } else {
            throw new Exception("文件格式错误，fileName的扩展名只能是xls或xlsx。");
        }
    }
}